<?php
/**
 * DotHerbert
 *
 * @package    objects
 * @subpackage factory
 * @copyright  2009 extreme-programmers
 * @license    http://dotherbert.extreme-programmers.com/license   BSD License
 * @version    $Id:$
 */

namespace dotherbert\objects\factory;

/**
 * Object factory interface
 *
 * @package    objects
 * @subpackage factory
 * @author     Johannes Trink <johannes.trink@extreme-programmers.com>
 */
interface ObjectFactory
{
    /**
     * Get object
     *
     * @param string $id
     * @return object
     */
    public function getObject($id);

    /**
     * Get parser
     *
     * @return dotherbert\objects\factory\parser\Parser
     */
    public function getParser();

    /**
     * Set parser
     *
     * @param dotherbert\objects\factory\parser\Parser $parser
     * @return void
     */
    public function setParser(parser\Parser $parser);
}